1. Field of the Invention
The present invention relates to a semiconductor storage.
2. Description of the Related Art
In recent years, non-volatile semiconductor memories have been used in various devices, such as computers, mobile phones, and home electric appliances, and have been actively developed. In particular, NAND-type flash memories are non-volatile semiconductor memories that allow for electrical rewrite, a high capacity, and high integration.
Also, a NAND-type flash memory that has the same connection interface standard (for example, ATA standard) as a hard disk drive (HDD), that is, a solid state drive (SSD) has been developed recently. Since the SSD has more excellent data read performance than the HDD, it can be expected to realize low power consumption and strong shock resistance.
As examples of a method for storing data in the non-volatile semiconductor memory, a method that erases data once in a block unit and writes data, a method that reads/writes data in a page unit, and a method where erase, read, and write units are fixed are used.
In general, the lifespan of the NAND-type flash memory depends on an erase/write count. Accordingly, in the NAND-type flash memory, if data is written into only a specific block and an erase operation is concentrated on the specific block, only the specific block may reach the end of its usefulness. For this reason, it is tried to lengthen the lifespan of each block by executing an equalizing process on an erase count of each block. The equalizing process is called wear leveling.
Meanwhile, in a storage system, such as a disk array, which is used in a server environment, in order to improve reliability, redundant arrays of independent/inexpensive disks (RAID) to which plural storage devices are connected may be constructed (for example, refers to D. Patterson, G. Gibson, and R. Katz. “A Case for Redundant Arrays of Inexpensive Disks (RAID)”, Proceedings of the 1988 ACM SIGMOD, pp. 109-116, June 1988).
Meanwhile, in the NAND-type flash memory, a value of data that is stored at the time of recording the data may become different from a value of the data that is read at the time of reading the data due to a high capacity and high integration, and the stored data may not be securely reproduced. Accordingly, as in the RAID, when redundancy is maintained with respect to all the recorded data, redundancy information, that is, parity data needs to be updated, whenever the data is updated.
Among semiconductor memories, in some memories, a data erase/write time may be significantly longer than a data read time. In this case, if parity data is updated for every data update, performance of the entire semiconductor storage, such as a write process speed, is deteriorated. As the parity data is updated, that is, a block erase/write count increases, the lifespan of the semiconductor storage is shortened.